package br.com.msystem.vo;
// Generated 12/03/2013 13:33:49 by Hibernate Tools 3.4.0.CR1


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * BalancoContagem generated by hbm2java
 */
@Entity
@Table(name="balanco_contagem"
    ,catalog="handy"
)
public class BalancoContagem  implements java.io.Serializable {


     private int balancoContagemSq;
     private Balanco balanco;
     private Date dataInicioContagem;
     private Date dataTerminoContagem;
     private int numeroContagem;
     private int statusContagem;
     private Set<BalancoContagemProduto> balancoContagemProdutos = new HashSet<BalancoContagemProduto>(0);

    public BalancoContagem() {
    }

	
    public BalancoContagem(Balanco balanco, int numeroContagem, int statusContagem) {
        this.balanco = balanco;
        this.numeroContagem = numeroContagem;
        this.statusContagem = statusContagem;
    }
    public BalancoContagem(Balanco balanco, Date dataInicioContagem, Date dataTerminoContagem, int numeroContagem, int statusContagem, Set<BalancoContagemProduto> balancoContagemProdutos) {
       this.balanco = balanco;
       this.dataInicioContagem = dataInicioContagem;
       this.dataTerminoContagem = dataTerminoContagem;
       this.numeroContagem = numeroContagem;
       this.statusContagem = statusContagem;
       this.balancoContagemProdutos = balancoContagemProdutos;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)

    
    @Column(name="balanco_contagem_sq", unique=true, nullable=false)
    public int getBalancoContagemSq() {
        return this.balancoContagemSq;
    }
    
    public void setBalancoContagemSq(int balancoContagemSq) {
        this.balancoContagemSq = balancoContagemSq;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="balanco_sq", nullable=false)
    public Balanco getBalanco() {
        return this.balanco;
    }
    
    public void setBalanco(Balanco balanco) {
        this.balanco = balanco;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="data_inicio_contagem", length=19)
    public Date getDataInicioContagem() {
        return this.dataInicioContagem;
    }
    
    public void setDataInicioContagem(Date dataInicioContagem) {
        this.dataInicioContagem = dataInicioContagem;
    }

    @Temporal(TemporalType.TIMESTAMP)
    @Column(name="data_termino_contagem", length=19)
    public Date getDataTerminoContagem() {
        return this.dataTerminoContagem;
    }
    
    public void setDataTerminoContagem(Date dataTerminoContagem) {
        this.dataTerminoContagem = dataTerminoContagem;
    }

    
    @Column(name="numero_contagem", nullable=false)
    public int getNumeroContagem() {
        return this.numeroContagem;
    }
    
    public void setNumeroContagem(int numeroContagem) {
        this.numeroContagem = numeroContagem;
    }

    
    @Column(name="status_contagem", nullable=false)
    public int getStatusContagem() {
        return this.statusContagem;
    }
    
    public void setStatusContagem(int statusContagem) {
        this.statusContagem = statusContagem;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="balancoContagem")
    public Set<BalancoContagemProduto> getBalancoContagemProdutos() {
        return this.balancoContagemProdutos;
    }
    
    public void setBalancoContagemProdutos(Set<BalancoContagemProduto> balancoContagemProdutos) {
        this.balancoContagemProdutos = balancoContagemProdutos;
    }




}


